LOOKUPN Function
Syntax
Arguments
- matchtype
A 1-character string that specifies which lookup table record should supply the value if more than one record matches the Key_Value. "F" = First "L" = Last "C" = Closest match Closest match uses the first occurrence of the closest inexact match if an exact match does not exist, otherwise it uses the first occurrence of an exact match.
- keyvalue
The value of a key to search for. The type of Key_Value must be the same as the type of the keys in the index specified by Index_Name. Any type
- result_expression
The name of a field in the Lookup_Table or a valid expression which may contain one or more fields.
- tablename
The fully qualified name of a table. If you omit the drive and path, Alpha Anywhere searches the directory of the current database.
- tagname
The name of an index in the index lookup table that may contain the Key_Value.
Description
Returns the value of a numeric expression in an external table.
Discussion
LOOKUPN() searches an external lookup table ( Lookup_Table ) for an indexed record matching the Key_Value, and returns the numeric value in Lookup_Expression from the matching record. Alpha Anywhere performs an indexed search of the Lookup_Table using the Index_Name index. Note : If a record with a matching Key_Value is not found, Alpha Anywhere returns 0.
Assume that the Invoice and Customer tables contain the following records and that the index, CUSTOMER_ID, exists on the CUST_ID field in Customer:
If the following expression defines a calculated field or global variable for the Invoice table, Alpha Anywhere returns the first value in the customer record that matches the current invoice record:
? lookupn("F", CUST_ID, "BALANCE", "c:\databases\CUSTOMER.DBF", "CUSTOMER_ID") = 22500 'if current invoice record is I008 (making CUST_ID = C005)
Note : You can use TABLE.FILENAME_GET()to get the fully qualified name of a table.
See Also